#pragma once
#include "BufferGeometry.h"
POCELAIN_NAMESPACE_BEGIN
class BoxGeometry : public BufferGeometry
{
public:
    BoxGeometry(Real width = 1,Real height = 1,Real depth = 1,size_t widthSegments = 1,size_t heightSegments = 1,size_t depthSegments = 1 );

private:
    void buildPlane(
        size_t u,
        size_t v,
        size_t w,
        int udir,
        int vdir,
        Real width,
        Real height,
        Real depth,
        size_t gridX,
        size_t gridY,
        size_t materialIndex,
        index_array_t::array_t &indices,
        Float32BufferAttribute::array_t &vertices,
        Float32BufferAttribute::array_t &normals,
        Float32BufferAttribute::array_t &uvs,
        size_t &numberOfVertices,
        size_t &groupStart
        );
};
POCELAIN_NAMESPACE_END
